package cuiyt.juc.bq;

import java.util.concurrent.ArrayBlockingQueue;
import java.util.concurrent.TimeUnit;

/**
 * @author cyt
 * @create 2020-09-16 下午 3:08
 */
public class demo4 {
    /**
     * 阻塞队列
     * <p>
     * 队列开始阻塞， 会存在一个超时的时间
     *
     * @param args
     */
    public static void main(String[] args) throws InterruptedException {
        ArrayBlockingQueue<Object> queue = new ArrayBlockingQueue<>(3);
        queue.offer(1);
        queue.offer(2);
        queue.offer(3);
        /**
         * 阻塞 2 秒
         */
//        queue.offer(4, 2, TimeUnit.SECONDS);

        System.out.println(queue.poll());
        System.out.println(queue.poll());
        System.out.println(queue.poll());
        /**
         * 阻塞 2 秒
         */
        System.out.println(queue.poll(2, TimeUnit.SECONDS));
    }
}
